package com.itheima.day04;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;

public class Demo01 {
    public static void main(String[] args) {
        //1. 创建键盘录入对象.
        Scanner sc = new Scanner(System.in);
        System.out.println("思路一");
        //2. 键盘录入两个整数, 分别表示小明左右手中的牌.
        System.out.println("请录入小明左手中牌的点数: ");
        int left = sc.nextInt();
        System.out.println("请录入小明右手中牌的点数: ");
        int right = sc.nextInt();

        //3. 打印结果.
        //3.1 打印交换前的结果.
        System.out.println("\r\n互换前小明手中的纸牌：");
        System.out.println("左手中牌的点数: " + left);
        System.out.println("右手中牌的点数: " + right);

        //3.2 打印交换后的结果.
        //核心思路: 交换两个整数变量.
        //思路一: 通过第三方临时变量实现.
        int temp = left;
        left = right;
        right = temp;

        //思路二: 通过算术运算符实现.
        System.out.println("思路二");
        System.out.println("请输入小明左手中的纸牌：");
        int leftHand = sc.nextInt();
        System.out.println("请输入小明右手中的纸牌：");
        int rightHand = sc.nextInt();
        System.out.println("左手中的纸牌：：" + leftHand);
        System.out.println("右手中的纸牌：" + rightHand);
        rightHand = rightHand + leftHand;
        leftHand = rightHand - leftHand;
        rightHand = rightHand - leftHand;
        System.out.println("左手中的纸牌：：" + leftHand);
        System.out.println("右手中的纸牌：" + rightHand);

        //思路三: 通过Collections.reverse实现.
        System.out.println("思路三");
        List<Integer> hand = new ArrayList<>();
        System.out.println("请输入小明左手中的纸牌：");
        hand.add(sc.nextInt());
        System.out.println("请输入小明右手中的纸牌：");
        hand.add(sc.nextInt());
        System.out.println("左手中的纸牌：：" + hand.get(0));
        System.out.println("右手中的纸牌：" + hand.get(1));
        Collections.reverse(hand);
        System.out.println("左手中的纸牌：：" + hand.get(0));
        System.out.println("右手中的纸牌：" + hand.get(1));
    }
}

	/*
		//尽可能多的用多种思路实现.
		1. 键盘录入小明左右手牌的点数, 并接收, 编写代码实现交换小明手中的牌, 并打印结果.1. 键盘录入小明左右手牌的点数, 并接收, 编写代码实现交换小明手中的牌, 并打印结果.
		格式如下:
			请输入小明左手中的纸牌：
			10
			请输入小明右手中的纸牌：
			8

			互换前小明手中的纸牌：
			左手中的纸牌：10
			右手中的纸牌：8

			互换后小明手中的纸牌：
			左手中的纸牌：8
			右手中的纸牌：10
	*/